Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- abstract interface



  The Obvious, the Easy, and the Possible

Much of the tension in product development and interface design comes from trying to balance the obvious, the easy, and the possible. Figuring out which things go in which bucket is critical to fully understanding how to make something useful. Shouldn’t everything be obvious? Unless you’re making a product that just does one thing – like a paperclip, for example – everything won’t be obvious. You have to make tough calls about what needs to be obvious, ...

   Software,Obvious,Easy,Possible,Requirements     2011-11-30 11:48:12

  Implement struct no copy in GoLang

There is some case where some of the struct in GoLang which is not meant to be copied. For example, sometimes a global configuration which should have only one version passed around the whole application and should not be copied and modified. In GoLang, there is no intuitive solution on preventing copying of struct. But there is still some way which can be leveraged to help prevent this while developing the code. The trick is to define some struct implementing sync.Locker interface and has this ...

   GO VET,NOCOPY,NO COPY     2020-09-04 22:24:58

  Simple Animation in the HTML5 Canvas Element

HTML5 is generating all kinds of buzz these days. Some of the buzz is about HTML5 being a replacement for Adobe’s Flash. I don’t think it’s there yet but it’s certainly on the way to changing the way content is presented on the web. This is a description of a very simple animation in an HTML5 canvas element. It is coded for readability and not for optimized operation. We’ll add a canvas element to a web page and then use javascript to draw on it. We will...

   HTML5,Canvas,Animation,Sample code     2011-07-01 10:20:08

  WireGuard VPN Troubleshooting

When you are working as a network/cluster admin for you team to config the WireGuard VPN for other members, you may meet some of the problems below and these are the solution you can try to fix them. ----------------------------------------------------------------------------------------------------------- Problem [1]: The WireGuard handshake request send from the client can be received from the server but the server's response was blocked at some where so the client can not receive serv...

   WIREGUARD,VPN,TROUBLESHOOTING     2021-12-14 09:17:46

  What the Heck are Algebraic Data Types? ( for Programmers )

This post is meant to be a gentle introduction to Algebraic Data Types. Some of you may be asking why you should learn Algebraic Data Types and how will they change your world?  I am not going to answer that, but suffice it to say that Algebraic Data Types are the underpinning of the type systems to the ML derived languages, Haskell and OCaml included, and their construction and properties allow for the power (and inference) that accompanies these type systems.  They are cropping...

   Algebraic Data Type,Set,Operator,Programmer     2011-12-30 08:31:43

  5 Signs of a Great User Experience

If you've used the mobile social network Path recently, it's likely that you enjoyed the experience. Path has a sophisticated design, yet it's easy to use. It sports an attractive red color scheme and the navigation is smooth as silk. It's a social app and finding friends is easy thanks to Path's suggestions and its connection to Facebook. In short, Path has a great user experience. That isn't the deciding factor on whether a tech product takes off. Ultimately it comes down to how many ...

   Usef interface,Standard,Good UI,Criteria     2012-01-30 05:51:35

  How to Set Spring profile With Example

Technology:  Spring Profiles provides a way to isolates the parts of application configuration, it will make available only in certain environments. It is mainly useful it wants to load spring beans based on environment configuration, for example if the operating system is windows we can load some specific spring beans, if it is other than load different spring beans. One more scenario where spring profiles widely used, like for QA environment we will use some database which is hosted local...

   JAVA,PROFILE,SPRING,DEVELOPMENT,APPLICATIONS     2018-07-20 01:17:23

  Foursquare : 20 million users and 2 billion check-ins

Yesterday was the Foursquare third annual 4sqDay celebration (Four - squared open four square, ie April 16), this mobile phone service site which is based on user location information confirmed that their users reached 20 million and there were two billion check-ins.Foursquare was founded in 2009 and it is a mobile phone service website based on the user location information .It encourages mobile phone users to share their current geographic location and other information with others. In co...

   Fpoursquare,Check-in,4sqDay     2012-04-17 13:39:14

  Configure a PHP web server on CentOS

Are you used to use cPanel or Plesk on VPS for your PHP website management? If for some reason you don't want to use them? What can you do? How do you maintain your website? How do you access Emails, use FTP to upload files or use phpMyAdmin to manage your databases? You may need to configure all these services yourself on a VPS without cPanel or Plesk or other similar apps.But to configure all these services on a Linux server is not an easy job. You may spend many nights but still fail to get s...

   Cron,Linux,CentOS,Email,FTP,MySQL     2012-07-08 06:01:56

  Kubernetes: Docker out

Recently,The hottest news in the Kubernetes circle that docker will be deprecated has been confirmed by the release of 1.20. Docker support in the Kubelet is now deprecated and will be removed in a future release. The Kubelet uses a module called “dockershim” which implements CRI support for Docker and it has seen maintenance issues in the Kubernetes community. We encourage you to evaluate moving to a container runtime that is a full-fledged implementation of CRI (v1alpha1 or v...

   DOCKERSHIM,DOCKER,KUBERNETES     2020-12-19 21:10:21